home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
HPAVC
/
HPAVC CD-ROM.iso
/
!XLS_S10.ZIP
/
XSCR.PPE
(
.txt
)
< prev
Wrap
PCBoard Programming Language Executable
|
1995-07-23
|
3KB
|
324 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 3.O1 (Encryption type I) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Integer INTEGER001
Integer INTEGER002
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
Integer INTEGER007
Integer INTEGER008
Integer INTEGER009
Integer INTEGER010
Integer INTEGER011
Integer INTEGER012
String STRING001
String STRING002
String TSTRING003(17)
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
String STRING009
String STRING010
;------------------------------------------------------------------------------
Gosub LABEL017
Cls
StartDisp 1
Gosub LABEL011
Gosub LABEL002
Gosub LABEL001
ResetDisp
StartDisp 0
End
:LABEL001
DefColor
Newline
Newline
Newline
Newline
Newline
PrintLn " @X08┌──────────────────────────────┐"
PrintLn " @X08│@X0FX-SCRiPTS BY SiN fAMe / XLABS@X08│"
PrintLn " @X08└──────────────────────────────┘"
Newline
DefColor
Delay 13
Wait
Return
:LABEL002
DefColor
Cls
Gosub LABEL006
BOOLEAN001 = 0
Gosub LABEL014
INTEGER007 = STRING007
INTEGER008 = STRING008
AnsiPos INTEGER008, INTEGER007
Gosub LABEL009
Gosub LABEL010
While (BOOLEAN001 == 0) Do
INTEGER004 = Asc(Inkey())
If (INTEGER004 == 13) Then
Gosub LABEL007
BOOLEAN001 = 1
DefColor
Gosub LABEL005
Continue
Endif
If ((INTEGER004 == 85) || (INTEGER004 == 56)) Then
INTEGER002 = INTEGER002 - 1
Gosub LABEL008
Dec INTEGER007
If (INTEGER007 < INTEGER005) INTEGER007 = INTEGER005 + INTEGER003 - 1
Gosub LABEL009
Gosub LABEL010
Continue
Endif
If ((INTEGER004 == 68) || (INTEGER004 == 50)) Then
INTEGER002 = INTEGER002 + 1
Gosub LABEL008
Inc INTEGER007
If (INTEGER007 > INTEGER005 + INTEGER003 - 1) Then
INTEGER007 = INTEGER005
Endif
Gosub LABEL009
Gosub LABEL010
Continue
Endif
If (((INTEGER004 == 27) || (INTEGER004 == 81)) || (INTEGER004 == 113)) Then
DefColor
BOOLEAN001 = 1
Gosub LABEL005
Continue
Endif
Gosub LABEL003
EndWhile
Return
:LABEL003
For INTEGER010 = 1 To INTEGER003
If (Lower(TSTRING003(INTEGER010)) == Lower(Chr(INTEGER004))) Then
Gosub LABEL008
If (INTEGER002 > INTEGER010) Then
INTEGER007 = INTEGER007 - INTEGER002 - INTEGER010
Goto LABEL004
Endif
If (INTEGER002 < INTEGER010) Then
INTEGER007 = INTEGER007 + INTEGER010 - INTEGER002
Endif
:LABEL004
INTEGER002 = INTEGER010
INTEGER012 = INTEGER007
INTEGER007 = INTEGER002 + INTEGER005 - 1
Gosub LABEL007
DefColor
Gosub LABEL005
INTEGER010 = INTEGER003
Endif
Next
Return
:LABEL005
Cls
Return
:LABEL006
If (Exist(PPEPath() + "XSCR.PCB")) DispFile PPEPath() + "XSCR.PCB", 0
Return
:LABEL007
INTEGER011 = INTEGER007 - INTEGER005 + 1
Color 0
Cls
Quest INTEGER011
Newline
Wait
INTEGER007 = INTEGER012
Goto LABEL002
:LABEL008
AnsiPos STRING008, STRING007
Print STRING006
Return
:LABEL009
STRING007 = INTEGER007
STRING008 = INTEGER008
STRING006 = ScrText(STRING008, STRING007, STRING010, 1)
Return
:LABEL010
AnsiPos INTEGER008, INTEGER007
Print ReadLine(STRING001, 2) + StripAtx(STRING006)
Return
:LABEL011
STRING001 = PPEPath() + "XSCR.CFG"
STRING002 = ReadLine(STRING001, 5)
STRING005 = ReadLine(STRING001, 6)
STRING010 = ReadLine(STRING001, 3)
INTEGER001 = S2I(ReadLine(STRING001, 7), 10)
STRING004 = ReadLine(STRING001, 4)
Tokenize STRING004
INTEGER005 = S2I(GetToken(), 10)
INTEGER006 = S2I(GetToken(), 10)
STRING007 = INTEGER005
STRING008 = INTEGER006 + INTEGER001
GetUser
INTEGER010 = 1
FOpen 1, STRING002, 0, 2
FGet 1, STRING004
:LABEL012
If (Ferr(1)) Goto LABEL013
TSTRING003(INTEGER010) = Left(STRING004, 1)
If (Lower(TSTRING003(INTEGER010)) == Lower(U_Trans)) Then
INTEGER002 = INTEGER010
STRING007 = STRING007 + INTEGER010 - 1
Endif
FGet 1, STRING004
Inc INTEGER010
Goto LABEL012
:LABEL013
FClose 1
Return
:LABEL014
AnsiPos INTEGER006, INTEGER005
INTEGER007 = INTEGER005
INTEGER008 = INTEGER006
INTEGER009 = 0
INTEGER003 = 0
FOpen 1, STRING002, 0, 2
FGet 1, STRING004
:LABEL015
If (Ferr(1)) Goto LABEL016
Inc INTEGER003
If (INTEGER003 > STRING005) Then
INTEGER003 = STRING005
FClose 1
Return
Endif
Print ReadLine(STRING001, 1) + TSTRING003(INTEGER003)
Forward INTEGER001
INTEGER010 = 5
While (Mid(STRING004, INTEGER010, 1) <> ",") Do
Inc INTEGER010
EndWhile
STRING009 = ""
Inc INTEGER010
While (Mid(STRING004, INTEGER010, 1) <> ",") Do
STRING009 = STRING009 + Mid(STRING004, INTEGER010, 1)
Inc INTEGER010
EndWhile
Print ReadLine(STRING001, 1) + STRING009
If (Len(STRING009) > INTEGER009) INTEGER009 = Len(STRING009)
FGet 1, STRING004
Inc INTEGER007
AnsiPos INTEGER008, INTEGER007
Goto LABEL015
:LABEL016
FClose 1
INTEGER007 = INTEGER005
Return
:LABEL017
If (TokCount()) Then
KbdStuff "T " + GetToken()
End
Endif
Return
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 2 End
; 4 Cls
; 2 Wait
; 1 Color
; 29 Goto
; 47 Let
; 4 Print
; 3 PrintLn
; 20 If
; 1 DispFile
; 2 FOpen
; 3 FClose
; 4 FGet
; 1 ResetDisp
; 2 StartDisp
; 1 GetUser
; 6 DefColor
; 21 Gosub
; 12 Return
; 1 Delay
; 7 Inc
; 1 Dec
; 7 Newline
; 1 Tokenize
; 1 KbdStuff
; 1 Quest
; 5 AnsiPos
; 1 Forward
;
;
; ■ Functions used :
;
; 17 +
; 9 -
; 11 ==
; 2 <>
; 3 <
; 1 <=
; 4 >
; 2 >=
; 17 !
; 2 &&
; 5 ||
; 2 Len(
; 4 Lower()
; 3 Mid()
; 1 Left()
; 2 Ferr()
; 1 Chr()
; 1 Asc()
; 1 StripAtx()
; 1 Inkey()
; 3 PPEPath()
; 8 ReadLine()
; 3 GetToken()
; 1 Exist()
; 3 S2I()
; 1 TokCount()
; 1 ScrText()
;
;------------------------------------------------------------------------------
;
; Analysis flags : No flag
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 1 For/Next
; 3 While/EndWhile
; 11 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------